﻿@model SGCC.Models.FuncionarioModel

@{
    ViewBag.Title = "Editar";

    //Cria uma lista com todas as especialidades
    List<SelectListItem> listaEspecialidades = new List<SelectListItem>();

    var especialidades = new SGCC.Models.EspecialidadeModel().ListarEspecialidades();
    listaEspecialidades.Add(new SelectListItem()
    {
        Text = "Selecione uma Epecialidade",
        Value = null,
        Selected = true
    });

    foreach (SGCC.Especialidade e in especialidades)
    {
        listaEspecialidades.Add(new SelectListItem()
        {
            Text = e.Nome,
            Value = Convert.ToString(e.EspecialidadeId),
            Selected = false
        });
    }

    ViewBag.especialidades = listaEspecialidades;

}

<h2>Editar Funcionário</h2>

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)

    <fieldset>
        <legend>FuncionarioModel</legend>

        @Html.HiddenFor(model => model.Id)

        <table class="tabela-cadastros">       

            <tr>
                <td class="cad-titulo">@Html.LabelFor(model => model.nome)</td>
                <td>@Html.TextBoxFor(model => model.nome, new { @class = "cad-input" })</td>
                <td>@Html.ValidationMessageFor(model => model.nome)</td>
            </tr>

            <tr>
                <td class="cad-titulo">@Html.LabelFor(model => model.dataNasc)</td>
                <td>@Html.TextBoxFor(model => model.dataNasc, "{0:dd/MM/yyyy}", new { @class = "cad-input" })</td>
                <td>@Html.ValidationMessageFor(model => model.dataNasc)</td>
            </tr>

            <tr>
                <td class="cad-titulo">@Html.LabelFor(model => model.telefone)</td>
                <td>@Html.TextBoxFor(model => model.telefone, new { @class = "cad-input" })</td>
                <td>@Html.ValidationMessageFor(model => model.telefone)</td>
            </tr>
            
            <tr>
                <td class="cad-titulo">@Html.LabelFor(model => model.cpf)</td>
                <td>@Html.TextBoxFor(model => model.cpf, new { @class = "cad-input" })</td>
                <td>@Html.ValidationMessageFor(model => model.cpf)</td>
            </tr>

             <tr>
                <td class="cad-titulo">@Html.LabelFor(model => model.especialidade)</td>
                <td>@Html.DropDownListFor(model => model.especialidadeId, (List<SelectListItem>)ViewBag.especialidades, new { @class = "cad-input" })</td>
                <td>@Html.ValidationMessageFor(model => model.especialidade)</td>
            </tr>

            <tr>
                <td class="cad-titulo"><label for="ddEstado">Estado*</label></td>
                <td><select class="cad-input" id="ddEstado"></select></td>
            </tr>

            <tr>
                <td class="cad-titulo"><label for="ddCidade">Cidade*</label></td>
                <td><select class="cad-input" id="ddCidade"></select></td>
            </tr>

            <tr>
                <td class="cad-titulo"><label>@Html.LabelFor(model => model.logradouro)</label></td>
                <td>@Html.TextBoxFor(model => model.logradouro, new { @class = "cad-input" })</td>
                <td>@Html.ValidationMessageFor(model => model.logradouro)</td>
            </tr>
            <tr>
                <td class="td-Enviar" colspan="2"><input type="submit" value="Salvar" /></td>
            </tr>

        </table>

        @Html.HiddenFor(m => m.estadoId)
        @Html.HiddenFor(m => m.cidadeId)

    </fieldset>
}

<div>
    @Html.ActionLink("Voltar", "Index")
</div>

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")
}
<script>
    $(function () {
        $("#dataNasc").datepicker();
    });

    function carregarEstados() {
        $.getJSON('/estado/get', function (data, status) {
            var estados = $("#ddEstado");

            estados.empty();

            $.each(data, function (i, item) {
                var option = $("<option />");
                option.attr("value", item.Id).text(item.Sigla);
                estados.append(option);
            });

            var estado = $("#estadoId").val();

            $('#ddEstado option[value="' + estado + '"]').attr('selected', 'selected');

            carregarCidades();
        });
    }

    function carregarCidades() {
        var estado = $("#ddEstado option:selected").val();

        $("#estadoId").val(estado);

        $.getJSON('/cidade/get?uf=' + estado, function (data) {
            var cidades = $("#ddCidade");

            cidades.empty();

            $.each(data, function (i, item) {
                var option = $("<option />");
                option.attr("value", item.Id).text(item.Nome);
                cidades.append(option);
            });

            var cidade = $("#cidadeId").val();

            $('#ddCidade option[value="' + cidade + '"]').prop('selected', true);
        });
    }

    $("#ddEstado").change(function (evt) {
        carregarCidades();
    });

    $("#ddCidade").change(function (evt) {
        var cidade = $("#ddCidade option:selected").val();

        $("#cidadeId").val(cidade);
    });

    carregarEstados();

</script>
